package controller;

import implement.UnidadeDAOImpl;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

import javax.annotation.PostConstruct;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;

import org.hibernate.mapping.Array;

import dao.UnidadeDAO;
import enums.RegionalUnidade;
import enums.TipoUnidade;
import model.Unidade;

@ManagedBean(name="unidadeBean")
public class UnidadeBean {
	
	public UnidadeDAO unidadeDAO = new UnidadeDAOImpl();
	
	private Unidade unidade;
	private List<TipoUnidade> tiposUnidade;
	private List<RegionalUnidade> regionais;

	@PostConstruct
	public void init(){
		unidade = new Unidade();
		unidade.setCidade("Fortaleza");
		tiposUnidade = new ArrayList<TipoUnidade>();
		regionais = new ArrayList<RegionalUnidade>();
	}
	
	public String salvar(){
		unidadeDAO.save(unidade);
		return "list";
	}
	
	public String editar(Unidade unidade){
		this.unidade = unidade;
		return "edit";
	}
	
	public String excluir(Unidade unidade){
		unidadeDAO.remove(unidade);
		return "list";
	}
	
	
	public Unidade getUnidade() {
		return unidade;
	}

	public void setUnidade(Unidade unidade) {
		this.unidade = unidade;
	}

	public List<Unidade> listaTodos() {
		return unidadeDAO.getAll(Unidade.class);
	}

	public List<TipoUnidade> getTiposUnidade() {
		tiposUnidade = Arrays.asList(TipoUnidade.values());
		return tiposUnidade;
	}
	public void setTiposUnidade(List<TipoUnidade> tiposUnidade) {
		this.tiposUnidade = tiposUnidade;
	}
	public List<RegionalUnidade> getRegionais() {
		regionais = Arrays.asList(RegionalUnidade.values());
		return regionais;
	}
		
	
	public void setRegionais(List<RegionalUnidade> regionais) {
		this.regionais = regionais;
	}
	
}
